home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / lib / python2.4 / test / test_glob.pyo (.txt) < prev    next >
Python Compiled Bytecode  |  2005-10-18  |  5KB  |  161 lines

  1. # Source Generated with Decompyle++
  2. # File: in.pyo (Python 2.4)
  3.  
  4. import unittest
  5. from test.test_support import run_unittest, TESTFN
  6. import glob
  7. import os
  8.  
  9. def mkdirs(fname):
  10.     if os.path.exists(fname) or fname == '':
  11.         return None
  12.     
  13.     (base, file) = os.path.split(fname)
  14.     mkdirs(base)
  15.     os.mkdir(fname)
  16.  
  17.  
  18. def touchfile(fname):
  19.     (base, file) = os.path.split(fname)
  20.     mkdirs(base)
  21.     f = open(fname, 'w')
  22.     f.close()
  23.  
  24.  
  25. def deltree(fname):
  26.     for f in os.listdir(fname):
  27.         fullname = os.path.join(fname, f)
  28.         if os.path.isdir(fullname):
  29.             deltree(fullname)
  30.             continue
  31.         
  32.         try:
  33.             os.unlink(fullname)
  34.         continue
  35.         continue
  36.  
  37.     
  38.     
  39.     try:
  40.         os.rmdir(fname)
  41.     except:
  42.         pass
  43.  
  44.  
  45.  
  46. class GlobTests(unittest.TestCase):
  47.     
  48.     def norm(self, *parts):
  49.         return os.path.normpath(os.path.join(self.tempdir, *parts))
  50.  
  51.     
  52.     def mktemp(self, *parts):
  53.         touchfile(self.norm(*parts))
  54.  
  55.     
  56.     def setUp(self):
  57.         self.tempdir = TESTFN + '_dir'
  58.         self.mktemp('a', 'D')
  59.         self.mktemp('aab', 'F')
  60.         self.mktemp('aaa', 'zzzF')
  61.         self.mktemp('ZZZ')
  62.         self.mktemp('a', 'bcd', 'EF')
  63.         self.mktemp('a', 'bcd', 'efg', 'ha')
  64.         if hasattr(os, 'symlink'):
  65.             os.symlink(self.norm('broken'), self.norm('sym1'))
  66.             os.symlink(self.norm('broken'), self.norm('sym2'))
  67.         
  68.  
  69.     
  70.     def tearDown(self):
  71.         deltree(self.tempdir)
  72.  
  73.     
  74.     def glob(self, *parts):
  75.         if len(parts) == 1:
  76.             pattern = parts[0]
  77.         else:
  78.             pattern = os.path.join(*parts)
  79.         p = os.path.join(self.tempdir, pattern)
  80.         return glob.glob(p)
  81.  
  82.     
  83.     def assertSequencesEqual_noorder(self, l1, l2):
  84.         self.assertEqual(set(l1), set(l2))
  85.  
  86.     
  87.     def test_glob_literal(self):
  88.         eq = self.assertSequencesEqual_noorder
  89.         eq(self.glob('a'), [
  90.             self.norm('a')])
  91.         eq(self.glob('a', 'D'), [
  92.             self.norm('a', 'D')])
  93.         eq(self.glob('aab'), [
  94.             self.norm('aab')])
  95.         eq(self.glob('zymurgy'), [])
  96.  
  97.     
  98.     def test_glob_one_directory(self):
  99.         eq = self.assertSequencesEqual_noorder
  100.         eq(self.glob('a*'), map(self.norm, [
  101.             'a',
  102.             'aab',
  103.             'aaa']))
  104.         eq(self.glob('*a'), map(self.norm, [
  105.             'a',
  106.             'aaa']))
  107.         eq(self.glob('aa?'), map(self.norm, [
  108.             'aaa',
  109.             'aab']))
  110.         eq(self.glob('aa[ab]'), map(self.norm, [
  111.             'aaa',
  112.             'aab']))
  113.         eq(self.glob('*q'), [])
  114.  
  115.     
  116.     def test_glob_nested_directory(self):
  117.         eq = self.assertSequencesEqual_noorder
  118.         if os.path.normcase('abCD') == 'abCD':
  119.             eq(self.glob('a', 'bcd', 'E*'), [
  120.                 self.norm('a', 'bcd', 'EF')])
  121.         else:
  122.             eq(self.glob('a', 'bcd', 'E*'), [
  123.                 self.norm('a', 'bcd', 'EF'),
  124.                 self.norm('a', 'bcd', 'efg')])
  125.         eq(self.glob('a', 'bcd', '*g'), [
  126.             self.norm('a', 'bcd', 'efg')])
  127.  
  128.     
  129.     def test_glob_directory_names(self):
  130.         eq = self.assertSequencesEqual_noorder
  131.         eq(self.glob('*', 'D'), [
  132.             self.norm('a', 'D')])
  133.         eq(self.glob('*', '*a'), [])
  134.         eq(self.glob('a', '*', '*', '*a'), [
  135.             self.norm('a', 'bcd', 'efg', 'ha')])
  136.         eq(self.glob('?a?', '*F'), map(self.norm, [
  137.             os.path.join('aaa', 'zzzF'),
  138.             os.path.join('aab', 'F')]))
  139.  
  140.     
  141.     def test_glob_broken_symlinks(self):
  142.         if hasattr(os, 'symlink'):
  143.             eq = self.assertSequencesEqual_noorder
  144.             eq(self.glob('sym*'), [
  145.                 self.norm('sym1'),
  146.                 self.norm('sym2')])
  147.             eq(self.glob('sym1'), [
  148.                 self.norm('sym1')])
  149.             eq(self.glob('sym2'), [
  150.                 self.norm('sym2')])
  151.         
  152.  
  153.  
  154.  
  155. def test_main():
  156.     run_unittest(GlobTests)
  157.  
  158. if __name__ == '__main__':
  159.     test_main()
  160.  
  161.